"""
继承格式:
class 子类(父类)
"""


# 继承已有的类
class NewList(list):
	pass  # 占位符，无具体意义


# 创建对象
l = NewList()
# 调用list的方法
l.append(1)
l.extend([8, 3.14])
l.sort()
print(l)  # [1, 3.14, 8]


# 继承自定义类
class Parents():
	def say(self):
		print('这是父类的方法')


class Son(Parents):
	pass


class daughter(Parents):
	'重新定义父类中的方法'

	def say(self):
		# 方法一，使用super获取父类的方法
		super().say()
		print('这是子类中的方法')


class daughter2(Parents):

	def say(self):
		# 方法二，调用未绑定的父类方法
		Parents.say(self)
		print('这是子类2中的方法')


class daughter3(Parents):

	# 方法重载
	def say(self):
		print('这是子类3中的方法')


p = Parents()
p.say()  # 这是父类的方法
s = Son()
s.say()  # 这是父类的方法
d = daughter()
d.say()  # 这是父类的方法 这是子类中的方法
d2 = daughter2()
d2.say()  # 这是父类的方法 这是子类2中的方法

# 方法三
d3 = daughter3()
Parents.say(d3)
d3.say()  # 这是父类的方法 这是子类3中的方法


# 多继承
class Parents2():
	def say2(self):
		print('这是parents2的方法')


class son2(Parents, Parents2):
	pass


s2 = son2()
s2.say()  # 这是父类的方法
s2.say2()  # 这是parents2的方法
